import React, { Component } from 'react'
// import store from "../../redux/store";
// 引入action
// import { createIncrementAction, createDecrementAction, createIncrementAsyncAction } from "../../redux/count_action";


export default class Count extends Component {

	// state = {count:0}

	//加法
	increment = ()=>{
		const {value} = this.selectNumber;
		this.props.jia(value*1);
		// store.dispatch({type:'increment',data:value*1});
		// const {count} = this.state
		// this.setState({count:count+value*1})

		// store.dispatch(createIncrementAction(value*1));
	}
	//减法
	decrement = ()=>{
		const {value} = this.selectNumber
		this.props.jian(value*1);
		// const {count} = this.state
		// this.setState({count:count-value*1})
		// store.dispatch({type:'decrement',data:value*1});
		// store.dispatch(createDecrementAction(value*1));
	}
	//奇数再加
	incrementIfOdd = ()=>{
		const {value} = this.selectNumber
		if(this.props.count % 2 !== 0){
			this.props.jia(value*1);
		}
		// const {count} = this.state
		// if(count % 2 !== 0){
		// 	this.setState({count:count+value*1})
		// }
		// const count1 = store.getState()
		// if( count1 % 2 !== 0){
			// store.dispatch({type:'increment',data:value*1});
			// store.dispatch(createIncrementAction(value*1));
		// }
	}
	//异步加
	incrementAsync = ()=>{
		const {value} = this.selectNumber
		this.props.jiaAsync(value*1,500);
		// const {count} = this.state
		// setTimeout(()=>{
		// 	// store.dispatch({type:'increment',data:value*1});
		// 	store.dispatch(createIncrementAction(value*1));
		// },500)

		// store.dispatch(createIncrementAsyncAction(value*1,500));
	}

	render() {
		return (
			<div>
				<h1>当前求和为：{this.props.count}</h1>
				<select ref={c => this.selectNumber = c}>
					<option value="1">1</option>
					<option value="2">2</option>
					<option value="3">3</option>
				</select>&nbsp;
				<button onClick={this.increment}>+</button>&nbsp;
				<button onClick={this.decrement}>-</button>&nbsp;
				<button onClick={this.incrementIfOdd}>当前求和为奇数再加</button>&nbsp;
				<button onClick={this.incrementAsync}>异步加</button>&nbsp;
			</div>
		)
	}
}
